The disclosed subject matter relates to a technique of delivering a mail.
A mail gateway has been more and more introduced into a mail system in recent years. The mail gateway has a function of receiving a mail, performing a prescribed processing to the received mail, and sending (relaying) the mail to a mail server as a destination. In this specification, a mail means information containing a message made up of a character, a graph, an image, a sound, a moving image, or the like which is sent or received to and from a personal computer, a mobile phone, a personal digital assistance, and the like, using, for example, a protocol for an email or a protocol for a mail used in a short message service or a multimedia messaging service.
In a mail system of a mobile communications carrier which provides data communication service for mobile phones or personal digital assistances, for example, a mail gateway converts a character code contained in a mail, an image attached thereto, or the like, and transmits the mail subjected to the conversion to a mail server as a destination. Further, in a mail system of a university or a business enterprise, a mail gateway is installed such that all transmitted and received mails pass through the mail gateway, to thereby perform filtering of spam mails or the like in order to improve security of a mail server.
Next is described a specific example of a processing performed by a mail gateway, assuming a case where a mail gateway in a mail system of a mobile communications carrier relays a mail.
The mail gateway receives a mail from a mobile phone as a sender, stores information on the received mail in a queue, and returns normal response information indicating that the mail has been successfully received, to the sender mobile phone. The mail gateway then relays the received mail to a mail transfer server (MTA: Message Transfer Agent) as a destination. If the relay has been successfully performed, the mail gateway deletes the information on the mail stored in the queue and terminates the processing.
A queue of a mail gateway is an area for temporarily storing information on a received mail and is configured by a volatile memory such as a RAM (Random Access Memory) or a nonvolatile memory such as a magnetic disk or a SSD (Solid State Drive). Such a queue makes it possible for a mail gateway to immediately respond to a mobile phone on a sending side or hold a mail until the mail has been successfully relayed to a mail transfer server.
On the other hand, if the relay has failed, the mail gateway performs a resend processing after an elapse of a prescribed period of time. However, if the mail transfer server as a destination is in a state of congestion because a trouble has occurred therein, or if a congestion occurs somewhere in a communication path to the destination mail transfer server, the mail gateway enters into the congestion state in which a queue is too full of mails waiting for being resent to receive any more new mails.
Japanese Laid-Open Patent Application, Publication No. 2005-269263 (see paragraphs 0048 through 0050) discloses a technique of avoiding such a congestion state. In Japanese Laid-Open Patent Application, Publication No. 2005-269263, a queue is provided for each of mail servers as destinations of mails, and congestion is controlled for each of the mail servers. With this configuration, if congestion occurs in a specific mail server, a queue which transmits a mail to the specific mail server having been in the congestion state controls reception of mails. From a viewpoint of the overall mail gateway, this makes it possible to limit an influence of the congestion only to a mail associated with the congested mail server.